import { reqSearchGoodsInfo } from "@/api"

const state = {
  goodsListInfo:{}
}
const mutations = {
  RECEIVE_GOODSLISTINFO(state,goodsListInfo){
    state.goodsListInfo = goodsListInfo
  },
}
const actions = {
  async getGoodsListInfo({commit},searchParams){
    const result = await reqSearchGoodsInfo(searchParams)
    if(result.code === 200){
      commit('RECEIVE_GOODSLISTINFO',result.data)
    }
  }
}
// 它是根据state数据进行计算
// 可以简化数据的操作
const getters = {
  trademarkList(state){
    // 这里我们要或一个空数组，因为一开始state就是要初始化的，初始化goodsListInfo是一个空的对象
    // getters就会根据初始化的{}，去获取trademarkList，必不可免拿到了undefined
    // 这个undefined我们一会是要去映射到组件当中去使用，一不留意就报错（undefined.xxx）
    return state.goodsListInfo.trademarkList || []
  },
  attrsList(state){
    return state.goodsListInfo.attrsList || []
  },
  goodsList(state){
    return state.goodsListInfo.goodsList || []
  }
}
export default {
  state,
  mutations,
  actions,
  getters
}